package com.dingding.manager.modules.system.dao.impl;

import java.util.List;

import org.apache.log4j.Logger;
import org.springframework.stereotype.Component;

import com.dingding.manager.common.beans.sys.SysMenu;
import com.dingding.manager.common.dao.Db;
import com.dingding.manager.modules.system.dao.MenuDao;
import com.dingding.manager.modules.system.sql.MenuSQL;

/**
 * 
* @ClassName: MenuDaoImpl 
* @Description: 菜单管理Dao实现类
* @author SUNZHICHENG 
* @date 2016年12月3日 上午10:09:39 
* @version V2.6.2
 */

@Component("menuDao")
public class MenuDaoImpl implements MenuDao{
	private static final Logger logger=Logger.getLogger(MenuDaoImpl.class);
	
	/**
	 * @Description: 
	 * @return 根据id获取菜单信息       
	 * @date 2016年12月3日 上午10:10:58
	 * @author SUNZHICHENG 
	 */
	
	@Override
	public SysMenu getMenuById(Integer id) {
		return Db.findById(id, SysMenu.class);		 
	}
	
	/**
	 * @Description: 根据角色名查询菜单信息
	 * @date 2016年12月3日 上午10:15:32
	 * @author SUNZHICHENG 
	 * @since V2.6.2
	 */
	
	@Override
	public List<SysMenu> getMenuByRoleName(String name) {
		try {
			List<SysMenu> menuList=Db.querySqlList(SysMenu.class, MenuSQL.QUERY_MENULIST_BY_ROLENAME, name);
			return menuList;
		} catch (RuntimeException e) {
			logger.error("根据角色名查询菜单信息错误",e);
		}
		return null;
	}
	
	
	/**
	 * @Description: 根据用户名查询菜单信息     
	 * @date 2016年12月3日 上午11:03:36
	 * @author SUNZHICHENG 
	 * @since V2.6.2
	 */
	@Override
	public List<SysMenu> getMenuByUserName(String name) {
		try {
			List<SysMenu> menuList = Db.querySqlList(SysMenu.class, MenuSQL.QUERY_MENULIST_BY_USERNAME, name);
			return menuList;
		} catch (RuntimeException e) {
			logger.error("根据用户名查询菜单信息错误",e);
		}
		return null;
	}

}
